package vaani.shabd;

import edu.stanford.nlp.tagger.maxent.MaxentTagger;
import java.util.LinkedList;
import java.util.List;
import vaani.internal.WordTagPair;

/**
 *
 * @author sourcemorph
 */
public class Tagger {
    private static MaxentTagger tagger;

    static {
        try {
            System.out.println(System.getProperty("user.dir"));
            tagger = new MaxentTagger("src/main/resources/data/left3words-wsj-0-18.tagger");
        } catch(Exception ex) {
            ex.printStackTrace();
        }
    }

    public static List<WordTagPair> tag(String sentence) throws Exception {
        List<WordTagPair> tags = new LinkedList<WordTagPair>();
        String taggedSentence = tagger.tagString(sentence);
        String [] temp = taggedSentence.split(" ");
        for(int i=0; i<temp.length; i++) {
            String [] t = temp[i].split("/");
            WordTagPair w = new WordTagPair(t[0].toLowerCase(), t[1]);
            tags.add(w);
        }
        return tags;
    }
}
